package sn.gandal.agriculture.agrimobile.j2me.dao;


import java.io.IOException;
import javax.microedition.rms.RecordEnumeration;
import javax.microedition.rms.RecordStore;
import javax.microedition.rms.RecordStoreException;
import sn.gandal.agriculture.agrimobile.j2me.businessObjects.Adresse;

/**
 *
 * @author dysow
 */
public class AdresseDAO
{

    private boolean valide = false;
    private RecordStore rsAdresse;
    private final static String TABLE_ADRESSE = "adresse";

    public void ajouter(Adresse adresse) throws RecordStoreException, IOException
    {
	try
	{
	    RecordStore.deleteRecordStore(AdresseDAO.TABLE_ADRESSE);
	}
	catch (Exception ex)
	{
	    //continuer avec l'operation
	}

	this.rsAdresse = RecordStore.openRecordStore(AdresseDAO.TABLE_ADRESSE, true);
	byte[] bytes = adresse.serialize();
	this.rsAdresse.addRecord(bytes, 0, bytes.length);

	this.rsAdresse.closeRecordStore();
    }

    /**
     * Retourne l'Agent De Pesée enregistré dans l'application
     * @return dernierADP - AgentDePesee
     */
    public Adresse getAdresse() throws RecordStoreException, IOException
    {
	Adresse adresse = null;
	RecordEnumeration re;

	this.rsAdresse = RecordStore.openRecordStore(AdresseDAO.TABLE_ADRESSE, true);
	re = this.rsAdresse.enumerateRecords(null, null, false);

	if (re.hasNextElement())
	{
	    adresse = new Adresse();
	    
	    byte[] result = re.nextRecord();
	    adresse.deSerialize(result);
	}

	this.rsAdresse.closeRecordStore();

	return adresse;
    }
}
